package com.xueyi.operations.domain.po;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.xueyi.common.core.web.tenant.base.TBaseEntity;
import com.xueyi.operations.domain.dto.OpFaultResultDto;
import com.xueyi.common.core.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import io.swagger.v3.oas.annotations.media.Schema;
import com.baomidou.mybatisplus.annotation.TableField;
import static com.baomidou.mybatisplus.annotation.SqlCondition.*;

import java.io.Serial;

import static com.xueyi.common.core.constant.basic.EntityConstants.STATUS;
import static com.xueyi.common.core.constant.basic.EntityConstants.SORT;
import static com.xueyi.common.core.constant.basic.EntityConstants.REMARK;
import static com.xueyi.common.core.constant.basic.EntityConstants.NAME;

/**
 * 流程结果 持久化对象
 *
 * @author lwb
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Schema(name = "流程结果 持久化对象")
@TableName(value = "op_fault_result", excludeProperty = { STATUS, SORT, REMARK, NAME })
public class OpFaultResultPo extends TBaseEntity {

    @Serial
    private static final long serialVersionUID = 1L;

    /** 故障管理ID */
    @Schema(name = "故障管理ID")
    @Excel(name = "故障管理ID")
    protected Long processId;

    /** 原因分析 */
    @Schema(name = "原因分析")
    @Excel(name = "原因分析")
    protected String causeAnalysis;

    /** 影响业务 */
    @Schema(name = "影响业务")
    @Excel(name = "影响业务")
    protected String businessImpact;

    /** 解决方案 */
    @Schema(name = "解决方案")
    @Excel(name = "解决方案")
    protected String solution;

    /** 最终结果 */
    @Schema(name = "最终结果")
    @Excel(name = "最终结果")
    protected String resolutionResult;

    /** 解决时间 */
    @Schema(name = "解决时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "解决时间")
    protected Date resolutionTime;

    /** 受理用户 */
    @Schema(name = "受理用户")
    @Excel(name = "受理用户")
    protected Long acceptorUser;

    /** 受理用户名 */
    @Schema(name = "受理用户名")
    @Excel(name = "受理用户名")
    protected String acceptorUserName;

}
